Skip to content

feat(converter): remove tracking id from title - #1466

Open
tziemek wants to merge 12 commits into
mainfrom
feat/converter-remove-tracking-id
Open

tziemek wants to merge 12 commits into
mainfrom
feat/converter-remove-tracking-id

Conversation

@tziemek

@tziemek tziemek commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

resolves #1073

@tziemek
tziemek requested a review from a team as a code owner November 5, 2026 15:44
@tziemek
tziemek requested a balanced review from Copilot and removed request for a team November 5, 2026 15:44

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The converter can strip brackets from retained title content, leaving unmatched brackets, and silently retain the tracking ID when the title contains only the ID and separators.

2 open issues
What changed in this PR

This PR adds tracking-ID removal to the CSAF 2.0-to-2.1 converter, addressing #1073’s title-cleanup requirement.

Changes:

  • Adds title cleanup for tracking IDs and adjacent separators, including Unicode variants.
  • Registers the cleanup step in the conversion pipeline.
  • Adds unit tests and enables conformance test 27.
File Description
csaf-rs/​tests/​converter-conformance.rs Enables the tracking-ID removal conformance test.
csaf-rs/​src/​converter/​remove_tracking_id_from_title.rs Implements title cleanup and unit tests.
csaf-rs/​src/​converter/​mod.rs Registers the new conversion step.

Review effort: Balanced

@github-actions github-actions Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CSAF Validation Benchmark

Details
Benchmark suite Current: 0e54454 Previous: 6b4176d Ratio
csaf_2_0_tests/6.1.1 101958 ns/iter (± 568) 95667 ns/iter (± 174) 1.07
csaf_2_0_tests/6.1.2 44424 ns/iter (± 96) 44408 ns/iter (± 325) 1.00
csaf_2_0_tests/6.1.3 16101 ns/iter (± 421) 16173 ns/iter (± 114) 1.00
csaf_2_0_tests/6.1.4 25034 ns/iter (± 217) 25409 ns/iter (± 109) 0.99
csaf_2_0_tests/6.1.5 15054 ns/iter (± 47) 14502 ns/iter (± 128) 1.04
csaf_2_0_tests/6.1.6 33471 ns/iter (± 189) 33096 ns/iter (± 105) 1.01
csaf_2_0_tests/6.1.7 30302 ns/iter (± 592) 30086 ns/iter (± 143) 1.01
csaf_2_0_tests/6.1.8 44587 ns/iter (± 93) 44157 ns/iter (± 497) 1.01
csaf_2_0_tests/6.1.9 49021 ns/iter (± 221) 49181 ns/iter (± 95) 1.00
csaf_2_0_tests/6.1.10 46531 ns/iter (± 307) 45748 ns/iter (± 59) 1.02
csaf_2_0_tests/6.1.11 14943 ns/iter (± 67) 14820 ns/iter (± 69) 1.01
csaf_2_0_tests/6.1.12 33312 ns/iter (± 106) 32363 ns/iter (± 305) 1.03
csaf_2_0_tests/6.1.13 29754 ns/iter (± 378) 29369 ns/iter (± 73) 1.01
csaf_2_0_tests/6.1.14 59222 ns/iter (± 187) 59648 ns/iter (± 78) 0.99
csaf_2_0_tests/6.1.15 76288 ns/iter (± 143) 76698 ns/iter (± 1565) 0.99
csaf_2_0_tests/6.1.16 44689 ns/iter (± 59) 42927 ns/iter (± 34) 1.04
csaf_2_0_tests/6.1.17 14802 ns/iter (± 73) 15012 ns/iter (± 77) 0.99
csaf_2_0_tests/6.1.18 16476 ns/iter (± 99) 16573 ns/iter (± 27) 0.99
csaf_2_0_tests/6.1.19 16657 ns/iter (± 122) 16418 ns/iter (± 61) 1.01
csaf_2_0_tests/6.1.20 14421 ns/iter (± 30) 14575 ns/iter (± 173) 0.99
csaf_2_0_tests/6.1.21 83435 ns/iter (± 312) 84781 ns/iter (± 484) 0.98
csaf_2_0_tests/6.1.22 53528 ns/iter (± 361) 54032 ns/iter (± 166) 0.99
csaf_2_0_tests/6.1.23 17146 ns/iter (± 135) 16983 ns/iter (± 169) 1.01
csaf_2_0_tests/6.1.24 16667 ns/iter (± 1631) 16453 ns/iter (± 30) 1.01
csaf_2_0_tests/6.1.25 35099 ns/iter (± 46) 32783 ns/iter (± 129) 1.07
csaf_2_0_tests/6.1.26 17394 ns/iter (± 32) 17265 ns/iter (± 53) 1.01
csaf_2_0_tests/6.1.27.1 14847 ns/iter (± 79) 14715 ns/iter (± 24) 1.01
csaf_2_0_tests/6.1.27.2 55772 ns/iter (± 1226) 55680 ns/iter (± 243) 1.00
csaf_2_0_tests/6.1.27.3 14835 ns/iter (± 42) 14341 ns/iter (± 69) 1.03
csaf_2_0_tests/6.1.27.4 14935 ns/iter (± 87) 14519 ns/iter (± 83) 1.03
csaf_2_0_tests/6.1.27.5 15432 ns/iter (± 525) 15180 ns/iter (± 28) 1.02
csaf_2_0_tests/6.1.27.6 14977 ns/iter (± 94) 14838 ns/iter (± 81) 1.01
csaf_2_0_tests/6.1.27.7 14947 ns/iter (± 151) 13818 ns/iter (± 17) 1.08
csaf_2_0_tests/6.1.27.8 15118 ns/iter (± 96) 14621 ns/iter (± 21) 1.03
csaf_2_0_tests/6.1.27.9 24936 ns/iter (± 99) 25009 ns/iter (± 103) 1.00
csaf_2_0_tests/6.1.27.10 15069 ns/iter (± 21) 15115 ns/iter (± 71) 1.00
csaf_2_0_tests/6.1.27.11 14468 ns/iter (± 28) 14293 ns/iter (± 9) 1.01
csaf_2_0_tests/6.1.28 28700 ns/iter (± 135) 27530 ns/iter (± 102) 1.04
csaf_2_0_tests/6.1.29 14153 ns/iter (± 29) 14151 ns/iter (± 100) 1.00
csaf_2_0_tests/6.1.30 39572 ns/iter (± 255) 40635 ns/iter (± 454) 0.97
csaf_2_0_tests/6.1.31 31381 ns/iter (± 1203) 31532 ns/iter (± 262) 1.00
csaf_2_0_tests/6.1.32 14330 ns/iter (± 19) 14365 ns/iter (± 189) 1.00
csaf_2_0_tests/6.1.33 20577 ns/iter (± 53) 20377 ns/iter (± 42) 1.01
csaf_2_0_tests/6.2.1 118454 ns/iter (± 1078) 116214 ns/iter (± 241) 1.02
csaf_2_0_tests/6.2.2 35547 ns/iter (± 106) 35333 ns/iter (± 270) 1.01
csaf_2_0_tests/6.2.3 17162 ns/iter (± 108) 17031 ns/iter (± 43) 1.01
csaf_2_0_tests/6.2.4 16330 ns/iter (± 11) 16318 ns/iter (± 51) 1.00
csaf_2_0_tests/6.2.5 48577 ns/iter (± 107) 48504 ns/iter (± 318) 1.00
csaf_2_0_tests/6.2.6 51786 ns/iter (± 335) 48691 ns/iter (± 86) 1.06
csaf_2_0_tests/6.2.7 14332 ns/iter (± 19) 14033 ns/iter (± 114) 1.02
csaf_2_0_tests/6.2.8 29659 ns/iter (± 127) 30625 ns/iter (± 46) 0.97
csaf_2_0_tests/6.2.9 29984 ns/iter (± 63) 30658 ns/iter (± 58) 0.98
csaf_2_0_tests/6.2.10 34442 ns/iter (± 2120) 34274 ns/iter (± 226) 1.00
csaf_2_0_tests/6.2.11 37911 ns/iter (± 76) 38403 ns/iter (± 5348) 0.99
csaf_2_0_tests/6.2.12 68891 ns/iter (± 982) 69266 ns/iter (± 849) 0.99
csaf_2_0_tests/6.2.13 682694 ns/iter (± 40067) 677131 ns/iter (± 4839) 1.01
csaf_2_0_tests/6.2.14 43162 ns/iter (± 263) 42437 ns/iter (± 235) 1.02
csaf_2_0_tests/6.2.15 35237 ns/iter (± 108) 34167 ns/iter (± 214) 1.03
csaf_2_0_tests/6.2.16 44119 ns/iter (± 360) 43357 ns/iter (± 97) 1.02
csaf_2_0_tests/6.2.17 15415 ns/iter (± 24) 15401 ns/iter (± 31) 1.00
csaf_2_0_tests/6.2.18 23644 ns/iter (± 40) 23808 ns/iter (± 39) 0.99
csaf_2_0_tests/6.2.19 40109 ns/iter (± 181) 41392 ns/iter (± 132) 0.97
csaf_2_0_tests/6.2.20 191604 ns/iter (± 607) 188639 ns/iter (± 780) 1.02
csaf_2_0_tests/6.3.1 32788 ns/iter (± 234) 32335 ns/iter (± 186) 1.01
csaf_2_0_tests/6.3.2 19364 ns/iter (± 21) 18878 ns/iter (± 11) 1.03
csaf_2_0_tests/6.3.3 80236 ns/iter (± 634) 79244 ns/iter (± 219) 1.01
csaf_2_0_tests/6.3.4 29773 ns/iter (± 132) 29547 ns/iter (± 119) 1.01
csaf_2_0_tests/6.3.5 33742 ns/iter (± 177) 31768 ns/iter (± 137) 1.06
csaf_2_0_tests/6.3.6 13559 ns/iter (± 76) 13840 ns/iter (± 62) 0.98
csaf_2_0_tests/6.3.7 13543 ns/iter (± 109) 13913 ns/iter (± 84) 0.97
csaf_2_0_tests/6.3.8 13493 ns/iter (± 113) 13611 ns/iter (± 64) 0.99
csaf_2_0_tests/6.3.9 30897 ns/iter (± 64) 30686 ns/iter (± 52) 1.01
csaf_2_0_tests/6.3.10 23604 ns/iter (± 26) 23888 ns/iter (± 64) 0.99
csaf_2_0_tests/6.3.11 24143 ns/iter (± 449) 24020 ns/iter (± 46) 1.01
csaf_2_1_tests/6.1.1 593913 ns/iter (± 1587) 579772 ns/iter (± 8123) 1.02
csaf_2_1_tests/6.1.2 260572 ns/iter (± 1881) 257537 ns/iter (± 713) 1.01
csaf_2_1_tests/6.1.3 100380 ns/iter (± 136) 102096 ns/iter (± 1425) 0.98
csaf_2_1_tests/6.1.4 139294 ns/iter (± 143) 142315 ns/iter (± 671) 0.98
csaf_2_1_tests/6.1.5 70237 ns/iter (± 94) 71804 ns/iter (± 581) 0.98
csaf_2_1_tests/6.1.6 132034 ns/iter (± 461) 135665 ns/iter (± 1528) 0.97
csaf_2_1_tests/6.1.7 164431 ns/iter (± 4189) 165299 ns/iter (± 504) 0.99
csaf_2_1_tests/6.1.8 338716 ns/iter (± 1370) 334535 ns/iter (± 926) 1.01
csaf_2_1_tests/6.1.9 382267 ns/iter (± 2291) 388357 ns/iter (± 6264) 0.98
csaf_2_1_tests/6.1.10 247290 ns/iter (± 555) 249762 ns/iter (± 2418) 0.99
csaf_2_1_tests/6.1.11 87969 ns/iter (± 172) 89575 ns/iter (± 565) 0.98
csaf_2_1_tests/6.1.12 117095 ns/iter (± 845) 115943 ns/iter (± 203) 1.01
csaf_2_1_tests/6.1.13 207521 ns/iter (± 342) 201273 ns/iter (± 921) 1.03
csaf_2_1_tests/6.1.14 236848 ns/iter (± 1090) 233033 ns/iter (± 873) 1.02
csaf_2_1_tests/6.1.15 450210 ns/iter (± 2295) 448417 ns/iter (± 1027) 1.00
csaf_2_1_tests/6.1.16 184939 ns/iter (± 290) 177649 ns/iter (± 233) 1.04
csaf_2_1_tests/6.1.17 71915 ns/iter (± 445) 72791 ns/iter (± 574) 0.99
csaf_2_1_tests/6.1.18 80146 ns/iter (± 357) 81381 ns/iter (± 273) 0.98
csaf_2_1_tests/6.1.19 77804 ns/iter (± 107) 78926 ns/iter (± 679) 0.99
csaf_2_1_tests/6.1.20 71388 ns/iter (± 215) 72120 ns/iter (± 360) 0.99
csaf_2_1_tests/6.1.21 322063 ns/iter (± 275) 328754 ns/iter (± 345) 0.98
csaf_2_1_tests/6.1.22 209325 ns/iter (± 1464) 212351 ns/iter (± 263) 0.99
csaf_2_1_tests/6.1.23 80314 ns/iter (± 107) 80976 ns/iter (± 165) 0.99
csaf_2_1_tests/6.1.24 188000 ns/iter (± 659) 200775 ns/iter (± 1761) 0.94
csaf_2_1_tests/6.1.25 201775 ns/iter (± 238) 195157 ns/iter (± 360) 1.03
csaf_2_1_tests/6.1.26 91395 ns/iter (± 1962) 90919 ns/iter (± 387) 1.01
csaf_2_1_tests/6.1.27.1 71083 ns/iter (± 1004) 72901 ns/iter (± 405) 0.98
csaf_2_1_tests/6.1.27.2 336777 ns/iter (± 739) 335867 ns/iter (± 3499) 1.00
csaf_2_1_tests/6.1.27.3 72320 ns/iter (± 452) 72682 ns/iter (± 1949) 1.00
csaf_2_1_tests/6.1.27.4 72311 ns/iter (± 173) 72320 ns/iter (± 438) 1.00
csaf_2_1_tests/6.1.27.5 73131 ns/iter (± 130) 73769 ns/iter (± 130) 0.99
csaf_2_1_tests/6.1.27.6 72579 ns/iter (± 641) 73069 ns/iter (± 585) 0.99
csaf_2_1_tests/6.1.27.7 73953 ns/iter (± 287) 70544 ns/iter (± 388) 1.05
csaf_2_1_tests/6.1.27.8 79489 ns/iter (± 652) 80051 ns/iter (± 610) 0.99
csaf_2_1_tests/6.1.27.9 87750 ns/iter (± 152) 90057 ns/iter (± 159) 0.97
csaf_2_1_tests/6.1.27.10 71925 ns/iter (± 214) 72290 ns/iter (± 256) 0.99
csaf_2_1_tests/6.1.27.11 73756 ns/iter (± 92) 73996 ns/iter (± 367) 1.00
csaf_2_1_tests/6.1.27.12 73503 ns/iter (± 597) 74825 ns/iter (± 475) 0.98
csaf_2_1_tests/6.1.27.13 91268 ns/iter (± 107) 92036 ns/iter (± 697) 0.99
csaf_2_1_tests/6.1.27.14 74021 ns/iter (± 79) 74801 ns/iter (± 1744) 0.99
csaf_2_1_tests/6.1.27.15 73821 ns/iter (± 165) 73959 ns/iter (± 88) 1.00
csaf_2_1_tests/6.1.27.16 73367 ns/iter (± 834) 74328 ns/iter (± 568) 0.99
csaf_2_1_tests/6.1.27.17 77868 ns/iter (± 229) 78976 ns/iter (± 276) 0.99
csaf_2_1_tests/6.1.27.18 81878 ns/iter (± 270) 87113 ns/iter (± 1121) 0.94
csaf_2_1_tests/6.1.27.19 371363 ns/iter (± 2482) 373043 ns/iter (± 2394) 1.00
csaf_2_1_tests/6.1.27.20 78331 ns/iter (± 145) 79384 ns/iter (± 499) 0.99
csaf_2_1_tests/6.1.28 111495 ns/iter (± 699) 111600 ns/iter (± 510) 1.00
csaf_2_1_tests/6.1.29 70131 ns/iter (± 170) 71503 ns/iter (± 118) 0.98
csaf_2_1_tests/6.1.30 174634 ns/iter (± 882) 173348 ns/iter (± 362) 1.01
csaf_2_1_tests/6.1.31 190751 ns/iter (± 405) 186223 ns/iter (± 876) 1.02
csaf_2_1_tests/6.1.32 70588 ns/iter (± 239) 71758 ns/iter (± 150) 0.98
csaf_2_1_tests/6.1.33 79560 ns/iter (± 155) 78884 ns/iter (± 365) 1.01
csaf_2_1_tests/6.1.34 79416 ns/iter (± 522) 80826 ns/iter (± 470) 0.98
csaf_2_1_tests/6.1.35 98371 ns/iter (± 672) 99809 ns/iter (± 979) 0.99
csaf_2_1_tests/6.1.36 146290 ns/iter (± 260) 146065 ns/iter (± 994) 1.00
csaf_2_1_tests/6.1.37 754271 ns/iter (± 6611) 724680 ns/iter (± 5598) 1.04
csaf_2_1_tests/6.1.38 71543 ns/iter (± 130) 71125 ns/iter (± 434) 1.01
csaf_2_1_tests/6.1.39 71702 ns/iter (± 782) 71238 ns/iter (± 627) 1.01
csaf_2_1_tests/6.1.40 72757 ns/iter (± 80) 72218 ns/iter (± 182) 1.01
csaf_2_1_tests/6.1.41 73802 ns/iter (± 2456) 77745 ns/iter (± 240) 0.95
csaf_2_1_tests/6.1.42 218047 ns/iter (± 2017) 216498 ns/iter (± 1655) 1.01
csaf_2_1_tests/6.1.43 191690 ns/iter (± 1278) 185347 ns/iter (± 1082) 1.03
csaf_2_1_tests/6.1.44 196461 ns/iter (± 481) 186378 ns/iter (± 2386) 1.05
csaf_2_1_tests/6.1.45 188353 ns/iter (± 474) 179223 ns/iter (± 874) 1.05
csaf_2_1_tests/6.1.46 195079 ns/iter (± 362) 194892 ns/iter (± 213) 1.00
csaf_2_1_tests/6.1.47 382753 ns/iter (± 5264) 374901 ns/iter (± 772) 1.02
csaf_2_1_tests/6.1.48 413460 ns/iter (± 4038) 396714 ns/iter (± 2450) 1.04
csaf_2_1_tests/6.1.49 459940 ns/iter (± 8538) 447659 ns/iter (± 5429) 1.03
csaf_2_1_tests/6.1.50 216451 ns/iter (± 4298) 214714 ns/iter (± 1535) 1.01
csaf_2_1_tests/6.1.51 197243 ns/iter (± 1471) 187371 ns/iter (± 1217) 1.05
csaf_2_1_tests/6.1.52 201578 ns/iter (± 383) 189719 ns/iter (± 410) 1.06
csaf_2_1_tests/6.1.53 81525 ns/iter (± 387) 81171 ns/iter (± 3451) 1.00
csaf_2_1_tests/6.1.54 110224 ns/iter (± 486) 110119 ns/iter (± 1549) 1.00
csaf_2_1_tests/6.1.55 113703 ns/iter (± 344) 113367 ns/iter (± 799) 1.00
csaf_2_1_tests/6.1.56 115441 ns/iter (± 209) 115571 ns/iter (± 629) 1.00
csaf_2_1_tests/6.1.57 155811 ns/iter (± 398) 155374 ns/iter (± 363) 1.00
csaf_2_1_tests/6.1.58 111890 ns/iter (± 216) 109783 ns/iter (± 314) 1.02
csaf_2_1_tests/6.1.59 206327 ns/iter (± 1032) 203557 ns/iter (± 393) 1.01
csaf_2_1_tests/6.1.60.1 361113 ns/iter (± 667) 362354 ns/iter (± 2713) 1.00
csaf_2_1_tests/6.1.60.2 192964 ns/iter (± 864) 185396 ns/iter (± 213) 1.04
csaf_2_1_tests/6.1.60.3 60989 ns/iter (± 814) 61183 ns/iter (± 114) 1.00
csaf_2_1_tests/6.1.61 190388 ns/iter (± 1545) 191633 ns/iter (± 211) 0.99
csaf_2_1_tests/6.1.62 199654 ns/iter (± 1021) 189230 ns/iter (± 329) 1.06
csaf_2_1_tests/6.1.63 216238 ns/iter (± 614) 209040 ns/iter (± 362) 1.03
csaf_2_1_tests/6.1.64.1 67477 ns/iter (± 46) 68783 ns/iter (± 526) 0.98
csaf_2_1_tests/6.1.64.2 190849 ns/iter (± 661) 197945 ns/iter (± 338) 0.96
csaf_2_1_tests/6.1.64.3 67233 ns/iter (± 142) 68170 ns/iter (± 784) 0.99
csaf_2_1_tests/6.1.64.4 103695 ns/iter (± 201) 106726 ns/iter (± 1253) 0.97
csaf_2_1_tests/6.1.64.5 92533 ns/iter (± 669) 93076 ns/iter (± 344) 0.99
csaf_2_1_tests/6.1.64.6 78743 ns/iter (± 455) 79901 ns/iter (± 538) 0.99
csaf_2_1_tests/6.1.64.7 72369 ns/iter (± 62) 73633 ns/iter (± 354) 0.98
csaf_2_1_tests/6.1.64.8 69378 ns/iter (± 135) 71068 ns/iter (± 298) 0.98
csaf_2_1_tests/6.1.64.9 79909 ns/iter (± 482) 80921 ns/iter (± 308) 0.99
csaf_2_1_tests/6.1.64.10 79732 ns/iter (± 356) 80566 ns/iter (± 368) 0.99
csaf_2_1_tests/6.1.64.11 106646 ns/iter (± 175) 108561 ns/iter (± 579) 0.98
csaf_2_1_tests/6.1.64.12 87858 ns/iter (± 2570) 88243 ns/iter (± 278) 1.00
csaf_2_1_tests/6.1.64.13 70136 ns/iter (± 89) 70838 ns/iter (± 2562) 0.99
csaf_2_1_tests/6.1.65.1 83208 ns/iter (± 604) 87132 ns/iter (± 1451) 0.95
csaf_2_1_tests/6.1.65.2 87918 ns/iter (± 227) 87576 ns/iter (± 1010) 1.00
csaf_2_1_tests/6.1.66 244282 ns/iter (± 2097) 248066 ns/iter (± 698) 0.98
csaf_2_1_tests/6.2.1 707974 ns/iter (± 5992) 695417 ns/iter (± 6819) 1.02
csaf_2_1_tests/6.2.2 164262 ns/iter (± 171) 167125 ns/iter (± 606) 0.98
csaf_2_1_tests/6.2.3 89775 ns/iter (± 741) 89816 ns/iter (± 201) 1.00
csaf_2_1_tests/6.2.4 77234 ns/iter (± 772) 77989 ns/iter (± 76) 0.99
csaf_2_1_tests/6.2.5 209610 ns/iter (± 301) 207612 ns/iter (± 734) 1.01
csaf_2_1_tests/6.2.6 227659 ns/iter (± 1277) 213676 ns/iter (± 739) 1.07
csaf_2_1_tests/6.2.8 191873 ns/iter (± 2403) 182984 ns/iter (± 795) 1.05
csaf_2_1_tests/6.2.9 191755 ns/iter (± 542) 182862 ns/iter (± 510) 1.05
csaf_2_1_tests/6.2.11 201857 ns/iter (± 996) 206780 ns/iter (± 423) 0.98
csaf_2_1_tests/6.2.12 371117 ns/iter (± 874) 375201 ns/iter (± 3078) 0.99
csaf_2_1_tests/6.2.13 4237091 ns/iter (± 127984) 4965718 ns/iter (± 342214) 0.85
csaf_2_1_tests/6.2.14 148821 ns/iter (± 784) 146490 ns/iter (± 879) 1.02
csaf_2_1_tests/6.2.15 131497 ns/iter (± 275) 129107 ns/iter (± 1146) 1.02
csaf_2_1_tests/6.2.16 251869 ns/iter (± 1179) 253246 ns/iter (± 958) 0.99
csaf_2_1_tests/6.2.17 90527 ns/iter (± 348) 89652 ns/iter (± 492) 1.01
csaf_2_1_tests/6.2.18 159603 ns/iter (± 218) 159866 ns/iter (± 434) 1.00
csaf_2_1_tests/6.2.19 162832 ns/iter (± 312) 163050 ns/iter (± 763) 1.00
csaf_2_1_tests/6.2.20 1641704 ns/iter (± 6660) 1790856 ns/iter (± 54211) 0.92
csaf_2_1_tests/6.2.21 356785 ns/iter (± 4734) 357791 ns/iter (± 1377) 1.00
csaf_2_1_tests/6.2.22 177002 ns/iter (± 1382) 176438 ns/iter (± 187) 1.00
csaf_2_1_tests/6.2.23 95570 ns/iter (± 120) 94766 ns/iter (± 91) 1.01
csaf_2_1_tests/6.2.24 247794 ns/iter (± 1705) 247714 ns/iter (± 724) 1.00
csaf_2_1_tests/6.2.25 97156 ns/iter (± 402) 97377 ns/iter (± 254) 1.00
csaf_2_1_tests/6.2.26 97272 ns/iter (± 493) 96292 ns/iter (± 5326) 1.01
csaf_2_1_tests/6.2.27 159811 ns/iter (± 2029) 158995 ns/iter (± 1866) 1.01
csaf_2_1_tests/6.2.28 86331 ns/iter (± 106) 85798 ns/iter (± 127) 1.01
csaf_2_1_tests/6.2.29 85932 ns/iter (± 451) 85447 ns/iter (± 590) 1.01
csaf_2_1_tests/6.2.30 87988 ns/iter (± 410) 85928 ns/iter (± 206) 1.02
csaf_2_1_tests/6.2.31 223057 ns/iter (± 845) 214193 ns/iter (± 587) 1.04
csaf_2_1_tests/6.2.32 362683 ns/iter (± 3125) 352103 ns/iter (± 766) 1.03
csaf_2_1_tests/6.2.33 246020 ns/iter (± 394) 244965 ns/iter (± 427) 1.00
csaf_2_1_tests/6.2.34 441821 ns/iter (± 705) 446723 ns/iter (± 1261) 0.99
csaf_2_1_tests/6.2.35 395315 ns/iter (± 2205) 388652 ns/iter (± 7722) 1.02
csaf_2_1_tests/6.2.36 394819 ns/iter (± 2620) 404308 ns/iter (± 1010) 0.98
csaf_2_1_tests/6.2.37 425558 ns/iter (± 2905) 417189 ns/iter (± 977) 1.02
csaf_2_1_tests/6.2.38 113664 ns/iter (± 1302) 114109 ns/iter (± 273) 1.00
csaf_2_1_tests/6.2.39.1 62753 ns/iter (± 334) 62394 ns/iter (± 411) 1.01
csaf_2_1_tests/6.2.39.2 75555 ns/iter (± 129) 75672 ns/iter (± 119) 1.00
csaf_2_1_tests/6.2.39.3 79980 ns/iter (± 270) 79676 ns/iter (± 485) 1.00
csaf_2_1_tests/6.2.39.4 359600 ns/iter (± 625) 358772 ns/iter (± 4955) 1.00
csaf_2_1_tests/6.2.39.5 74841 ns/iter (± 2092) 74112 ns/iter (± 139) 1.01
csaf_2_1_tests/6.2.39.6 75539 ns/iter (± 912) 76528 ns/iter (± 881) 0.99
csaf_2_1_tests/6.2.39.7 74744 ns/iter (± 116) 74823 ns/iter (± 407) 1.00
csaf_2_1_tests/6.2.39.8 74606 ns/iter (± 510) 74509 ns/iter (± 328) 1.00
csaf_2_1_tests/6.2.39.9 73665 ns/iter (± 52) 73746 ns/iter (± 297) 1.00
csaf_2_1_tests/6.2.39.10 77865 ns/iter (± 117) 78283 ns/iter (± 187) 0.99
csaf_2_1_tests/6.2.39.11 78420 ns/iter (± 290) 78139 ns/iter (± 203) 1.00
csaf_2_1_tests/6.2.39.12 76235 ns/iter (± 110) 76893 ns/iter (± 1018) 0.99
csaf_2_1_tests/6.2.39.13 76003 ns/iter (± 140) 76075 ns/iter (± 258) 1.00
csaf_2_1_tests/6.2.40 115663 ns/iter (± 701) 116118 ns/iter (± 449) 1.00
csaf_2_1_tests/6.2.41 207821 ns/iter (± 311) 197423 ns/iter (± 268) 1.05
csaf_2_1_tests/6.2.42 177560 ns/iter (± 288) 175840 ns/iter (± 644) 1.01
csaf_2_1_tests/6.2.43 394941 ns/iter (± 8386) 397975 ns/iter (± 747) 0.99
csaf_2_1_tests/6.2.44 103342 ns/iter (± 1375) 102500 ns/iter (± 106) 1.01
csaf_2_1_tests/6.2.45 105842 ns/iter (± 1305) 105618 ns/iter (± 177) 1.00
csaf_2_1_tests/6.2.46 114578 ns/iter (± 908) 113830 ns/iter (± 103) 1.01
csaf_2_1_tests/6.2.47 302559 ns/iter (± 1930) 311282 ns/iter (± 1270) 0.97
csaf_2_1_tests/6.2.48 189137 ns/iter (± 4234) 181741 ns/iter (± 1390) 1.04
csaf_2_1_tests/6.2.49 86457 ns/iter (± 568) 86149 ns/iter (± 2564) 1.00
csaf_2_1_tests/6.2.50.1 63661 ns/iter (± 619) 63705 ns/iter (± 565) 1.00
csaf_2_1_tests/6.2.50.2 63890 ns/iter (± 1492) 63645 ns/iter (± 221) 1.00
csaf_2_1_tests/6.2.50.3 63953 ns/iter (± 106) 63936 ns/iter (± 204) 1.00
csaf_2_1_tests/6.2.51 86893 ns/iter (± 81) 87197 ns/iter (± 107) 1.00
csaf_2_1_tests/6.2.52 215250 ns/iter (± 7891) 206360 ns/iter (± 229) 1.04
csaf_2_1_tests/6.2.53 95425 ns/iter (± 1313) 95121 ns/iter (± 104) 1.00
csaf_2_1_tests/6.2.54.1 64011 ns/iter (± 190) 63839 ns/iter (± 667) 1.00
csaf_2_1_tests/6.2.54.2 64356 ns/iter (± 87) 65001 ns/iter (± 507) 0.99
csaf_2_1_tests/6.2.54.3 64387 ns/iter (± 95) 64260 ns/iter (± 195) 1.00
csaf_2_1_tests/6.2.54.4 64691 ns/iter (± 1501) 64285 ns/iter (± 757) 1.01
csaf_2_1_tests/6.2.55 87710 ns/iter (± 412) 87899 ns/iter (± 214) 1.00
csaf_2_1_tests/6.2.56.1 64648 ns/iter (± 321) 64722 ns/iter (± 574) 1.00
csaf_2_1_tests/6.2.56.2 74072 ns/iter (± 311) 74879 ns/iter (± 381) 0.99
csaf_2_1_tests/6.2.56.3 93992 ns/iter (± 514) 95158 ns/iter (± 416) 0.99
csaf_2_1_tests/6.2.56.4 65181 ns/iter (± 457) 64852 ns/iter (± 213) 1.01
csaf_2_1_tests/6.2.56.5 65287 ns/iter (± 102) 65057 ns/iter (± 74) 1.00
csaf_2_1_tests/6.2.57 112877 ns/iter (± 393) 112673 ns/iter (± 206) 1.00
csaf_2_1_tests/6.3.1 191904 ns/iter (± 1773) 192869 ns/iter (± 12302) 0.99
csaf_2_1_tests/6.3.2 87031 ns/iter (± 503) 88234 ns/iter (± 510) 0.99
csaf_2_1_tests/6.3.3 422289 ns/iter (± 2758) 403997 ns/iter (± 1030) 1.05
csaf_2_1_tests/6.3.4 149727 ns/iter (± 1727) 145080 ns/iter (± 874) 1.03
csaf_2_1_tests/6.3.5 200548 ns/iter (± 951) 194025 ns/iter (± 292) 1.03
csaf_2_1_tests/6.3.6 65956 ns/iter (± 325) 63814 ns/iter (± 207) 1.03
csaf_2_1_tests/6.3.7 65491 ns/iter (± 376) 64305 ns/iter (± 221) 1.02
csaf_2_1_tests/6.3.8 65478 ns/iter (± 69) 64575 ns/iter (± 71) 1.01
csaf_2_1_tests/6.3.9 212496 ns/iter (± 1512) 202012 ns/iter (± 726) 1.05
csaf_2_1_tests/6.3.10 164616 ns/iter (± 440) 164506 ns/iter (± 110) 1.00
csaf_2_1_tests/6.3.11 163412 ns/iter (± 1841) 161271 ns/iter (± 399) 1.01
csaf_2_1_tests/6.3.12 229037 ns/iter (± 3194) 226221 ns/iter (± 1931) 1.01
csaf_2_1_tests/6.3.13 89225 ns/iter (± 258) 90544 ns/iter (± 122) 0.99
csaf_2_1_tests/6.3.14 139806 ns/iter (± 325) 139148 ns/iter (± 428) 1.00
csaf_2_1_tests/6.3.15 138491 ns/iter (± 904) 139893 ns/iter (± 422) 0.99
csaf_2_1_tests/6.3.16 89697 ns/iter (± 377) 89816 ns/iter (± 147) 1.00
csaf_2_1_tests/6.3.17 89738 ns/iter (± 227) 90304 ns/iter (± 1023) 0.99
csaf_2_1_tests/6.3.18 99839 ns/iter (± 80) 100074 ns/iter (± 144) 1.00
csaf_2_1_tests/6.3.19.1 67517 ns/iter (± 165) 67201 ns/iter (± 381) 1.00
csaf_2_1_tests/6.3.19.2 67567 ns/iter (± 447) 67242 ns/iter (± 421) 1.00
csaf_2_1_tests/6.3.19.3 67528 ns/iter (± 78) 67212 ns/iter (± 213) 1.00
csaf_2_1_tests/6.3.19.4 67506 ns/iter (± 43) 67262 ns/iter (± 92) 1.00
csaf_2_1_tests/6.3.19.5 67556 ns/iter (± 37) 67213 ns/iter (± 360) 1.01
csaf_2_1_tests/6.3.20 105141 ns/iter (± 121) 105308 ns/iter (± 54) 1.00
csaf_2_1_tests/6.3.21.1 189550 ns/iter (± 828) 190430 ns/iter (± 275) 1.00
csaf_2_1_tests/6.3.21.2 66222 ns/iter (± 641) 65329 ns/iter (± 121) 1.01
csaf_2_1_tests/6.3.21.3 70284 ns/iter (± 358) 70840 ns/iter (± 393) 0.99
csaf_2_1_tests/6.3.21.4 141792 ns/iter (± 229) 139730 ns/iter (± 963) 1.01
csaf_2_1_tests/6.3.21.5 71302 ns/iter (± 273) 73028 ns/iter (± 144) 0.98
csaf_2_1_tests/6.3.21.6 70289 ns/iter (± 446) 71416 ns/iter (± 406) 0.98
csaf_2_1_tests/6.3.21.7 73474 ns/iter (± 198) 74202 ns/iter (± 130) 0.99
csaf_2_1_tests/6.3.21.8 72293 ns/iter (± 419) 72421 ns/iter (± 167) 1.00
csaf_2_1_tests/6.3.21.9 73245 ns/iter (± 145) 73486 ns/iter (± 513) 1.00
csaf_2_1_tests/6.3.22 99280 ns/iter (± 303) 99646 ns/iter (± 732) 1.00
csaf_2_1_tests/6.3.23.1 79638 ns/iter (± 429) 79792 ns/iter (± 182) 1.00
csaf_2_1_tests/6.3.23.2 83023 ns/iter (± 114) 82086 ns/iter (± 137) 1.01
csaf_2_1_tests/6.3.24 95330 ns/iter (± 407) 92084 ns/iter (± 159) 1.04
csaf_2_1_tests/6.3.25 91226 ns/iter (± 154) 92161 ns/iter (± 575) 0.99
csaf_2_1_tests/6.3.26.1 130799 ns/iter (± 167) 132202 ns/iter (± 1238) 0.99
csaf_2_1_tests/6.3.26.2 75465 ns/iter (± 544) 75599 ns/iter (± 132) 1.00
csaf_2_1_tests/6.3.26.3 74765 ns/iter (± 387) 72369 ns/iter (± 611) 1.03
csaf_2_1_tests/6.3.26.4 78763 ns/iter (± 484) 80024 ns/iter (± 464) 0.98
full_validation/csaf_2_0_full_preset 4873569 ns/iter (± 12815) 4756420 ns/iter (± 66164) 1.02
full_validation/csaf_2_1_full_preset 60655297 ns/iter (± 744347) 61222843 ns/iter (± 568635) 0.99
parse_only/csaf_2_0 918821 ns/iter (± 6319) 934561 ns/iter (± 4456) 0.98
parse_only/csaf_2_1 6449517 ns/iter (± 11332) 6480865 ns/iter (± 25136) 1.00
typed_parse/csaf_2_0 1606536 ns/iter (± 2555) 1632022 ns/iter (± 59422) 0.98
typed_parse/csaf_2_1 10803225 ns/iter (± 68725) 10859316 ns/iter (± 89510) 0.99

This comment was automatically generated by workflow using github-action-benchmark.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The title conversion can panic on multibyte whitespace, leave unmatched delimiters with asymmetric whitespace, and fail to remove a supported quote pair.

2 open issues
2 resolved since last review

Review effort: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Tracking-ID removal can corrupt retained titles by treating word-internal apostrophes as quote delimiters and stripping meaningful leading punctuation from names such as .NET.

2 open issues
2 resolved since last review

Review effort: Balanced

@tziemek
tziemek force-pushed the feat/converter-remove-tracking-id branch from 430e8f3 to 5e7186c Compare November 10, 2026 07:54
@tziemek
tziemek requested a balanced review from Copilot November 10, 2026 08:05

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Title cleanup still deletes quoted product names adjacent to tracking IDs and leaves separator commas or semicolons behind, requiring fixes and regression coverage.

2 open issues
2 resolved since last review

Review effort: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Interacting delimiter-pairing edge cases can delete punctuation from retained text or leave stray separators, requiring human assessment of the title-cleanup behavior.

No open issues 🎉

2 resolved since last review

Review effort: Balanced

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

converter: remove tracking id from title

4 participants